The instant invention relates generally to methods of computing directed at factoring numbers and modular arithmetic. More specifically, the invention pertains to utilizing a digital multistate phase change material to perform factoring and modular arithmetic in a non-binary fashion.
The development of the computer is commonly regarded as one of the most significant advances of the last half of the twentieth century. Computers have simplified many aspects of everyday life and have led to significant productivity gains in the economy. Recent needs in image processing and complex computing have spurned significant advances in microprocessor speed and memory storage density. Further advances and future applications of computers depend on mankind""s ability to process larger amounts of information in increasingly more efficient ways.
Silicon is at the heart of today""s computer. The advances in computing power and speed have largely been a consequence of better understanding the fundamental properties of silicon and harnessing those properties for practical effect. Initial progress was predicated on building basic electronic components such as transistors and diodes out of silicon and later progress followed from the development of integrated circuits. Recent advances represent a continuation of these trends and currently emphasize miniaturization and the integration of an ever larger number of microelectronic devices on a single chip. Smaller devices lead to higher memory storage densities, more highly integrated circuits and reduced interaction times between devices on the same chip.
An inherent feature of silicon based computing devices is the binary execution of mathematical operations and other data processing objectives. In binary computing, the computing medium, silicon, has two programming states available for representing and manipulating data. The two programming states are typically labeled xe2x80x9c0xe2x80x9d and xe2x80x9c1xe2x80x9d and the volume of silicon used to store a xe2x80x9c0xe2x80x9d or a xe2x80x9c1xe2x80x9d is typically referred to as a bit. Data, including numbers and letters, is converted to a series of one or more xe2x80x9c0xe2x80x9d""s and/or xe2x80x9c1xe2x80x9d""s where each xe2x80x9c0xe2x80x9d or xe2x80x9c1xe2x80x9d is stored in a separate bit. Thus, a series of bits may be programmed to store data by establishing the appropriate combination of xe2x80x9c0xe2x80x9d""s and xe2x80x9c1xe2x80x9d""s. Manipulations of data involve bit operations that modify the state of a bit according to a desired computing objective to produce an output that typically includes a series of bits that store a different combination or sequence of xe2x80x9c0xe2x80x9d""s and/or xe2x80x9c1""sxe2x80x9d than was present at the outset of the manipulation.
Binary computers have proven remarkably successful for a number of computing applications such as automation, word processing and basic mathematical computations. As computing needs expand and more complex applications are envisioned, it is becoming more evident that conventional binary computing suffers from a number of limitations. Higher computing speeds and more parallel operation, for example, are predicated on an ability to continue to miniaturize silicon based microelectronic devices. Concerns over whether miniaturization efforts can continue are becoming more pronounced as many people believe that practical and fundamental limits will present increasingly insurmountable barriers to miniaturization. Complex computing situations such as those requiring adaptability, interactivity or highly parallel processing do not appear to be optimally achieved or even possible through conventional binary methods.
In order for the computer industry to expand and for the computer to become relevant to more applications and more complex computing situations, changes in the way computers function are in order.
The instant invention is generally directed at extending the range of capabilities of computers through non-binary computing methods. The instant methods are designed for a computing medium that is capable of non-binary operation. Non-binary operation may be obtained with a digital multistate phase change material capable of possessing more than two programming states. The instant computing methods permit the performance of computations with a computing medium that includes more than two programming states. Computations utilizing three, four or more programming states are achievable with the instant computing methods.
In one embodiment, a method of factorization is provided. The purpose of the method is to determine the multiplicative factors of an input number. The method includes programming a digital multistate phase change material according to a potential multiplicative factor through the establishment of a number of programming states corresponding to the potential multiplicative factor. A numerical value may be assigned to each programming state and transformations among or between different programming states correspond to mathematical manipulation of the numbers associated with the programming states. The programming states are separated in energy relative to the reset state of a phase change material and may be chosen so that the programming state associated with a potential multiplicative factor corresponds to the set state of a phase change material. Application of energy to the reset state of a phase change material in an amount characteristic of the potential multiplicative factor may thus lead to setting of the phase change material. The setting transformation is readily detected as a change in the resistance of the phase change material. By parsing energy corresponding to the number to be factored in amounts characteristic of the potential multiplicative factor, factoring may be accomplished by counting the number of setting transformations (and resetting after each setting transformation) and insuring that no remainder is present once all of the energy corresponding to the number to be factored has been provided.
In one embodiment, a given volume of phase change material maybe employed to test different potential multiplicative factors by sequentially establishing programming states according to one multiplicative factor, determining whether that potential multiplicative factor is indeed a factor, and repeating for other multiplicative factors by re-establishing programming states accordingly. An inherent feature of a multistate phase change material is the ability to define and redefine programming states in such a way that different numbers of programming states are positioned at different energies between the reset state and set state. Consequently, it is possible for the set state to correspond to each of several different potential multiplicative factors.
In an alternative embodiment, separate volumes of phase change material may be used to test different multiplicative factors. In this embodiment, a distinct volume of phase change material is dedicated to each potential multiplicative factor of interest and programmed accordingly by establishing an appropriate number of programming states. In this embodiment, a large number of potential multiplicative factors may be tested by operating on the separate volumes of phase change material sequentially or in parallel. Parallel operation provides for especially efficient factoring of numbers.
The instant methods also provide for computations in the framework of modular arithmetic. These methods include methods for the computation of remainders and congruence relationships in arithmetic systems that are governed by a modulus.